from collections import Counter,defaultdict
N=[0,1]
S=[0,-1]
E=[1,0]
W=[-1,0]
def jia(a,op):
return [a[0]+op[0],a[1]+op[1]]
for i in range(int(input())):
n=int(input())
s=input()
chu=[0,0]
n="NO"
if len(s)==2:
if s[0]==s[1]:
print("RH")
continue
else:
print("NO")
continue
k=Counter(s)
for i in s:
chu=jia(chu,eval(i))
if chu[0]%2!=0 or chu[1]%2!=0:
print("NO")
else:
final=[chu[0]//2,chu[1]//2]
res=[]
count=defaultdict(lambda:0)
if final[0]!=0:
if final[0]<0:
count["W"]=abs(final[0])
else:
count["E"]=abs(final[0])
if final[1]!=0:
if final[1]<0:
count["S"]=abs(final[1])
else:
count["N"]=abs(final[1])
if final==[0,0]:
k=Counter(s)
if (k["W"]>0 and k["E"]>0):
count["W"]=1
count["E"]=1
elif (k["S"]>0 and k["N"]>0):
count["S"]=1
count["N"]=1
for i in s:
if count[i]!=0:
count[i]-=1
res.append("R")
else:
res.append("H")
print("".join(res))
Bricks Game | Char Sum |
Two Strings | Anagrams |
Prime Number | Lexical Sorting Reloaded |
1514A - Perfectly Imperfect Array | 580A- Kefa and First Steps |
1472B- Fair Division | 996A - Hit the Lottery |
MSNSADM1 Football | MATCHES Playing with Matches |
HRDSEQ Hard Sequence | DRCHEF Doctor Chef |
559. Maximum Depth of N-ary Tree | 821. Shortest Distance to a Character |
1441. Build an Array With Stack Operations | 1356. Sort Integers by The Number of 1 Bits |
922. Sort Array By Parity II | 344. Reverse String |
1047. Remove All Adjacent Duplicates In String | 977. Squares of a Sorted Array |
852. Peak Index in a Mountain Array | 461. Hamming Distance |
1748. Sum of Unique Elements | 897. Increasing Order Search Tree |
905. Sort Array By Parity | 1351. Count Negative Numbers in a Sorted Matrix |
617. Merge Two Binary Trees | 1450. Number of Students Doing Homework at a Given Time |